`timescale 1ns / 100ps

module compression_tb ();

    localparam PADDING_WIDTH = 1024;

    reg  clk;
    reg  rst_n;
    reg  start;
    reg  [PADDING_WIDTH-1:0] padding_data;
    wire finish;
    wire [255:0] sha_data;

    initial begin
        $dumpfile("./output/compression.vcd");
        $dumpvars(0, u_compression);

        padding_data = 1111;
        clk = 0;
        rst_n = 1;
        #1; 
        rst_n = 0;
        #1; 
        rst_n = 1;
        #6;

        start = 1;
        #10;
        start = 0;

        #3000

        $finish;
    end

    always #10 clk = ~clk;

    compression#(.PADDING_WIDTH(PADDING_WIDTH)) u_compression (
        .clk(clk),
        .rst_n(rst_n),
        .start(start),
        .padding_data(padding_data),
        .sha_data(sha_data),
        .finish(finish)
    );

endmodule